package com.gxuwz.Market.util;

import java.io.File;
import java.io.IOException;

import javax.servlet.ServletContext;

import org.apache.commons.io.FileUtils;
import org.apache.struts2.ServletActionContext;

import com.gxuwz.core.util.UidUtils;

/**
 * @ClassName: Image
 * @Description: 关于图片的操作
 * @author 唐泽
 * @date 2017年8月23日
 */

public class Image {
	private static ServletContext context=ServletActionContext.getServletContext();  
	
	/**
	 * @Description: 添加图片，并返回该图片存放的路径
	 * @param upload
	 * @param uploadFileName
	 * @return
	 * @author 唐泽 
	 * @date 2017年8月23日
	 */
	public static String add(File upload,String uploadFileName){
		//文件的绝对路径
		String targetDirectory = context.getRealPath("\\upload\\mapdepot\\");  
		//文件后缀
		String targetFileName = uploadFileName.substring(uploadFileName.lastIndexOf("."));  
		//文件前缀
	    String name = uploadFileName.substring(0,uploadFileName.lastIndexOf("."));  
	    //文件名组装：UUID.后缀
		targetFileName = UidUtils.UID()+"_"+name+targetFileName;  
		//上传文件
        File target = new File(targetDirectory, targetFileName);
        try {
			FileUtils.copyFile(upload, target);
		} catch (IOException e) {
			System.out.println("上传出错");
		}
        String path = "upload\\mapdepot\\" + targetFileName;//保存文件的存放路径
        
		return path;
		
	}
	
	/**
	 * @Description: 图片文件删除
	 * @param pictureAddress
	 * @author 唐泽 
	 * @date 2017年8月23日
	 */
	public static void delete(String pictureAddress){
		//文件的绝对路径
		String targetDirectory = context.getRealPath("");  
		//文件的相对路径
		String path = targetDirectory + pictureAddress;
		
		File file = new File(path);
		  //刪除
	       if(!file.isDirectory()){
	    	   //文件删除
	           file.delete();
	           System.out.println("删除成功");
	       }else if(file.isDirectory()){
	    	   System.out.println("删除失败");
	       }
	}

	public static ServletContext getContext() {
		return context;
	}

	public static void setContext(ServletContext context) {
		Image.context = context;
	}

}
